Ext.ns('Tm.task');
Tm.task.TaskFileAddPanel = Ext.extend(Ext.Panel, {
			id : 'taskFileAddPanel',
			frame : true,
			layout : 'fit',
			autoWidth : true,
			autoHeight : true,
			dataId : null,
			parent : null,
			initComponent : function() {
				var form = new Tm.common.FormPanel({
							// standardSubmit : true,
							labelWidth : 100,
							defaults : {
								xtype : 'textfield',
								margins : '0 5 0 0',
								width : 300
							},
							ref : 'form',
							errorReader : new Tm.common.DataReader(),
							items : [{
										name : 'id',
										hidden : true
									}, {
										name : 'taskId',
										hidden : true
									}, {
										fieldLabel : '文件名称',
										name : 'name',
										allowBlank : false
									}, {
										fieldLabel : '上级目录',
										xtype : 'treecombobox',
										name : 'parent',
										hiddenName : 'parent',
										dataUrl : 'file/loadAllFilelyFile.do',
										allowBlank : false
									}, {
										name : 'type',
										fieldLabel : '文件类型',
										xtype : 'combo',
										mode : 'local',
										editable : false,
										typeAhead : true,
										forceSelection : true,
										hiddenName : 'type',
										triggerAction : 'all',
										emptyText : '请选择...',
										selectOnFocus : true,
										store : Tm.data.fileType2,
										allowBlank : false
									}, {
										name : 'description',
										fieldLabel : '描述',
										xtype : 'textarea'
									}]
						});
				var toolBar = new Ext.Toolbar({
							hideBorders : true,
							buttons : [{
										text : '保存',
										iconCls : 'act_acceptIcon',
										handler : function() {
											if (form.getForm().isValid()) {
												Ext.Ajax.request({
															waitMsg : '正在提交,请稍候...',
															method : 'post',
															url : 'file/saveOrUpdateFile.do',
															params : Ext.apply(form.getForm().getFieldValues(false), {
																		'parent' : form.getForm().findField('parent').value
																	}),
															success : function(response, action) {
																// App.setAlert('ok', '操作成功');
																App.setAlert('ok', '保存成功!');
																var file = Ext.decode(response.responseText);
																Ext.getCmp('taskFileAddPanel').init(file);
																// Ext.getCmp('fileAddWindow').close();
															},
															failure : function(response, action) {
																App.setAlert('ok', '保存失败!');
															}
														});
											}
										}
									}, {
										xtype : 'tbseparator'
									}, {
										text : '重置',
										iconCls : 'act_resetIcon',
										handler : function() {
											form.getForm().reset();
										}
									}]
						});
				Ext.apply(this, {
							tbar : toolBar,
							items : [form]
						});
				Tm.task.TaskFileAddPanel.superclass.initComponent.call(this);
			},
			listeners : {
				render : function() {
					this.loadData();
				}
			},
			loadData : function() {
				var dataId = this.dataId;
				var taskId = this.taskId;
				if (dataId) {
					Ext.Ajax.request({
								url : 'file/loadFifile.do',
								params : {
									id : dataId
								},
								success : function(response, action) {
									var file = Ext.decode(response.responseText);
									Ext.getCmp('taskFileAddPanel').init(file);
								},
								failure : function(response, action) {
									App.setAlert('error', '载入失败');
								}
							});
				} else {
					var taskFileAddPanel = Ext.getCmp('taskFileAddPanel');
					var form = taskFileAddPanel.form;
					form.getForm().findField('parent').setValue(this.parent);
					form.getForm().findField('taskId').setValue(this.taskId);
				}
			},
			init : function(file) {
				var taskFileAddPanel = Ext.getCmp('taskFileAddPanel');
				var form = taskFileAddPanel.form;
				form.getForm().findField('id').setValue(file.id);
				form.getForm().findField('parent').setValue(file.parent);
				form.getForm().findField('name').setValue(file.name);
				form.getForm().findField('type').setValue(file.type);
				form.getForm().findField('taskId').setValue(file.taskId);
				form.getForm().findField('description').setValue(file.description);
			}
		});